package com.ruoyi.project.api.controller;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.alibaba.fastjson.JSONArray;
import com.ruoyi.framework.web.controller.BaseController;
import com.ruoyi.framework.web.page.TableDataInfo;
import com.ruoyi.project.anquan.domain.SecurityYh;
import com.ruoyi.project.api.service.ApiISecurityYhService;

/**
 * 隐患Controller
 * 
 * @author ruoyi
 * @date 2020-05-13
 */
@RestController
@RequestMapping("/api/anquan/yh")
@CrossOrigin //所有域名均可访问该类下所有接口
public class ApiSecurityYhController extends BaseController
{
    @Autowired
    private ApiISecurityYhService apiISecurityYhService;

    /**
     * 按隐患类型统计统计
     */
    @GetMapping("/yhlx")
    public TableDataInfo statisticsByEventType()
    {
        startPage();
        List<SecurityYh> list = apiISecurityYhService.statisticsByYhType();
        return getDataTable(list);
    }
    /**
     * 按隐患整改类型统计统计
     */
    @GetMapping("/yhzglx")
    public TableDataInfo statisticsByYhEditType()
    {
    	startPage();
    	List<SecurityYh> list = apiISecurityYhService.statisticsByYhEditType();
    	return getDataTable(list);
    }
    
    /**
     * 统计需要整改数量
     */
    @GetMapping("/yhxy")
    public TableDataInfo statisticsByYhStatusXy() {
    	JSONArray list = apiISecurityYhService.statisticsByYhStatusXy();
    	return getDataTable(list);
    }
    
    /**
     * 统计及时整改数量
     */
    @GetMapping("/yhjs")
    public TableDataInfo statistixByYhStatusJs() {
       List<SecurityYh> list = apiISecurityYhService.statisticsByYhStatusJs();
       return getDataTable(list);
    }
    /**
     * 统计本月的整改率
     */
    @GetMapping("/yhbyzgl")
    public TableDataInfo statistixByYhStatusJs(SecurityYh securityYh) {
    	JSONArray list = apiISecurityYhService.statisticsByYhByzgl(securityYh);
    	return getDataTable(list);
    }
}